package com.nit.lab.service.basic;

import com.nit.lab.dto.basic.DeptDTO;
import com.nit.lab.dto.system.TreeDTO;
import com.nit.lab.dto.utils.TableReqDTO;
import com.nit.lab.dto.utils.TableRspDTO;

import java.util.List;

public interface DeptService {
    /**
     * @Description: 获取部门表格数据
     * @Author HWY
     * @Date 2020/12/14 10:50
     */
    TableRspDTO list4Table(TableReqDTO tableReqDTO) throws Exception;

    /**
     * @Description: 新增部门信息
     * @Author HWY
     * @Date 2020/12/14 10:50
     */
    Integer add(DeptDTO deptDTO) throws Exception;

    /**
     * @Description: 更新部门信息
     * @Author HWY
     * @Date 2020/12/14 10:50
     */
    Integer update(DeptDTO deptDTO) throws Exception;

    /**
     * @Description: 删除部门信息
     * @Author HWY
     * @Date 2020/12/14 10:50
     */
    Integer remove(String deptIds) throws Exception;

    /**
     * @Description: 获取部门信息用于选择
     * @Author: HWY
     * @Date: 2020/12/14 22:45
     */
    List<DeptDTO> listDept() throws Exception;

    /**
     * @Description: 获取单位信息树
     * @Author HWY
     * @Date 2020/12/20
     */
    List<TreeDTO> listDeptTree(Long deptId, Long deptType) throws Exception;
}
